package com.dolphin.aiagentplatform.ai.config;

import com.dolphin.aiagentplatform.constant.StorageTypeConst;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Configuration;

/**
 * 聊天存储配置类
 */
@Configuration
public class ChatStorageConfig {

    /**
     * 聊天ID存储类型，默认为数据库存储
     * 可在application.yml中配置：chat.storage.type=memory或database
     */
    @Value("${dolphin.ai.chat.storage.type:database}")
    private String storageType;

    /**
     * 获取存储类型常量
     *
     * @return 存储类型常量
     */
    public StorageTypeConst getStorageType() {
        if ("memory".equalsIgnoreCase(storageType)) {
            return StorageTypeConst.MEMORY;
        }
        return StorageTypeConst.DATABASE;
    }

    /**
     * 是否使用内存存储
     *
     * @return 是否使用内存存储
     */
    public boolean isMemoryStorage() {
        return getStorageType() == StorageTypeConst.MEMORY;
    }

    /**
     * 是否使用数据库存储
     *
     * @return 是否使用数据库存储
     */
    public boolean isDatabaseStorage() {
        return getStorageType() == StorageTypeConst.DATABASE;
    }
} 